package com.lyf.scm.plan.insfrastructure.db.dataobject;


import io.swagger.annotations.ApiModel;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;


/**
 * @Author: huangtao
 * @Description:
 * @Date: create in 2020/7/30
 */
@Data
@ApiModel("其他渠道计划")
public class SalesPlanOtherDO extends BaseDO {
    /**
     * 主键id
     */

    private Long id;


    /**
     * 其他渠道销售计划单号
     */
    private String salesPlanOtherNo;

    /**
     * 计划活动编码
     */
    private String salesPlanActivityNo;

    /**
     * 全渠道
     */
    private String allChannelCode;

    /**
     * 渠道编码
     */
    private String channelCode;
    /**
     * 分层code
     */
    private String layeredCode;
    /**
     * 大品类code
     */
    private String priCategoryCode;

    /**
     * 中品类code
     */
    private String secCategoryCode;

    /**
     * 小品类code
     */
    private String terCategoryCode;

    /**
     * 大品类名称
     */
    private String priCategoryName;

    /**
     * 中品类名称
     */
    private String secCategoryName;

    /**
     * 小品类名称
     */
    private String terCategoryName;

    /**
     * 省份code
     */
    private String provinceCode;

    /**
     * 省份名称
     */
    private String provinceName;
    /**
     * 城市code
     */
    private String cityCode;
    /**
     * 城市name
     */
    private String cityName;
    /**
     * 区/县城市code
     */
    private String countyCode;
    /**
     * 区/县城市name
     */
    private String countyName;
    /**
     * 商品sku
     */
    private String skuCode;
    /**
     * 商品名称
     */
    private String skuName;
    /**
     * 商品类型
     */
    private String skuTypeName;

    /**
     * 门店code
     */
    private String storeCode;
    /**
     * 门店名称
     */
    private String storeName;

    /**
     * 上次计划量
     */
    private BigDecimal lastPlanQty;
    /**
     * 上次确认量
     */
    private BigDecimal lastConfirmedQty;
    /**
     * 计划量
     */
    private BigDecimal planQty;
    /**
     * 确认量
     */
    private BigDecimal confirmedQty;
    /**
     * 计划开始时间
     */
    private Date planStartDate;
    /**
     * 计划结束时间
     */
    private Date planEndDate;

    /**
     * 商品类型编号
     */
    private String skuTypeCode;
    /**
     * 单位编码
     */
    private String unitCode;
    /**
     * 单位名称
     */
    private String unitName;
    /**
     * 渠道负责人确认量
     */
    private BigDecimal channelConfirmedQty;
    /**
     * 全渠道负责人确认量
     */
    private BigDecimal allchannelConfirmedQty;
    /**
     * 最晚到货日期
     */
    private Date latestArrivalDate;
    /**
     * 渠道名称
     */
    private String channelName;
    /**
     * 子渠道编码
     */
    private String subChannelCode;
    /**
     * 子渠道名称
     */
    private String subChannelName;

    /**
     * 计划类型（1-经销中心营销计划、2-云商营销计划、3-新开店计划（直营门店）、4-新开店计划（加盟门店）、5-新品铺货计划（直营门店）、6-新品铺货计划（云商）、7-新品铺货计划（APP）、8-新品铺货计划（经销中心））
     */
    private String type;

    private List<String> typeList;

    /**
     * 计划状态（0：已取消，1：已确认）
     */
    private Integer status;

    /**
     * 渠道负责人上次确认量
     */
    private BigDecimal channelLastConfirmedQty;
    /**
     * 全渠道负责人上次确认量
     */
    private BigDecimal allchannelLastConfirmedQty;
    /**
     * 确认状态(0:未确认,1:已确认)
     */
    private Integer confirmedStatus;

    /**
     * 渠道负责人确认状态(0:未确认,1:已确认)
     */
    private Integer channelConfirmedStatus;

    /**
     * 全渠道负责人确认状态(0:未确认,1:已确认)
     */
    private Integer allchannelConfirmedStatus;
    /**
     * 日期集合
     */
    private List<String> dateList;

    /**
     * 其他渠道计划集合
     */
    private List<SalesPlanOtherDO> salesPlanOtherList;

    /**
     * 优惠券数量
     */
    private BigDecimal couponQty;

    /**
     * 仓库
     */
    private String warehouse;

    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * 供应商名称
     */
    private String supplierName;

    /**
     * 联系人
     */
    private String contacts;

    /**
     * 导入新开店计划备注
     */
    private String remark;


    /**
     * 推送采购单状态(0-待推送,1-成功,2-失败)
     */
    private Integer importPurchaseStatus;

    /**
     * 推送采购单状态(失败原因)
     */
    private String importPurchaseFail;

    /**
     * 计划周期
     */
    private String planDate;

    /**
     * 操作标识
     *
     */
    private String opSign;
    /**
     * 计划导入日期
     *
     */
    private Date planImportDate;

    /**
     * 1:营销计划不能取消
     */
    private Integer synStatus;
}
